export default {
  // Navigation and common
  common: {
    id: 'ID',
    confirm: 'Confirm',
    cancel: 'Cancel',
    save: 'Save',
    print: 'Print',
    exit: 'Exit',
    loading: 'Loading...',
    success: 'Success',
    error: 'Error',
    warning: 'Warning',
    delete: 'Delete',
    edit: 'Edit',
    add: 'Add',
    search: 'Search',
    reset: 'Reset',
    submit: 'Submit',
    close: 'Close',
    open: 'Open',
    select: 'Select',
    upload: 'Upload',
    download: 'Download',
    refresh: 'Refresh',
    back: 'Back',
    next: 'Next',
    previous: 'Previous',
    total: 'Total',
    score: 'Score',
    time: 'Time',
    date: 'Date',
    name: 'Name',
    age: 'Age',
    gender: 'Gender',
    male: 'Male',
    female: 'Female',
    yes: 'Yes',
    no: 'No',
    enabled: 'Enabled',
    disabled: 'Disabled'
  },

  // Report page
  report: {
    title: 'Assessment Report',
    title2: 'Training Report',
    personalInfo: 'Personal Information',
    dataLoading: 'Loading...',
    assessmentInfo: 'Assessment Information',
    assessmentInfo2: 'Training Information',
    chartAnalysis: 'Chart Analysis',
    disabilityTypeAnalysis: 'Disability Type Analysis',
    serialNumber: 'No.',
    assessmentContent: 'Assessment Content',
    assessmentScore: 'Assessment Score',
    remarks: 'Remarks',
    assessmentScale: 'Assessment Scale',
    assessmentDate: 'Assessment Date',
    startTime: 'Start Time',
    endTime: 'End Time',
    totalScore: 'Total Assessment Score',
    opinion: 'Opinion',
    signature: 'Signature',
    attachment: 'Attachment',
    preset: 'Preset',
    zoom: 'Zoom',
    audioPlay: 'Play Audio',
    audioPause: 'Pause Audio',
    audioError: 'Audio playback failed',
    saveSuccess: 'Saved successfully',
    saveFailed: 'Save failed, please try again',
    printReport: 'Print Report',
    printInitiated: 'Print initiated, please confirm in the print dialog',
    printFailed: 'Print failed, please try again',
    exitReport: 'Exit Report',
    unit: 'Unit (points)',
    unitTimes: 'Unit (times)',
    selfCare: 'Self-care',
    sphincterControl: 'Sphincter Control',
    transfer: 'Transfer',
    walking: 'Walking',
    communication: 'Communication',
    socialCognition: 'Social Cognition',
    correct: 'Correct',
    incorrect: 'Incorrect',
    hint: 'Hint',
    pageError: 'Page loading error',
    reload: 'Reload',
    dataFormatError: 'Report data format error',
    noReportData: 'No report data found',
    dataInitError: 'Data initialization error',
    canvasName: 'Figure {number}'
  },

  // Settings page
  settings: {
    title: 'System Settings',
    startup: 'On Startup',
    fastMode: 'Fast Mode',
    systemInfo: 'System Information',
    unitName: 'Unit Name',
    showUnitNameInReport: 'Show unit name in report',
    deviceSN: 'Device SN',
    language: 'Language',
    themeColor: 'Theme Color',
    selectTheme: 'Select Theme',
    blueTheme: 'Blue Theme',
    greenTheme: 'Green Theme',
    purpleTheme: 'Purple Theme',
    voicePackage: 'Voice',
    chineseEnglishLanguage: 'Chinese/English',
    chinese: 'Chinese',
		english: 'English',
    systemPassword: 'System Password',
    resetPassword: 'Reset Password',
    
    mandarinFemale: 'Mandarin Female',
    mandarinMale: 'Mandarin Male',
    scaleSettings: 'Scale Settings',
    inputContent: 'Input content (max 160 characters)',
    content: 'Content',
    operation: 'Operation',
    iotSettings: 'IoT Settings',
    enableIot: 'Enable IoT',
    systemUpdate: 'System Update',
    currentVersion: 'Current Version',
    checking: 'Checking...',
    checkUpdate: 'Check Update',
    newVersionFound: 'New version found, downloading update...',
    downloadProgress: 'Download progress: {percent}%',
    updateDownloaded: 'Update downloaded, will install after restart',
    alreadyLatest: 'Already latest version',
    checkUpdateFailed: 'Check update failed',
    fastModeDesc: {
      title: 'Fast Mode:',
      line1: 'Login with temporary user by default',
      line2: 'Temporary user appears first in user list',
      normalTitle: 'Normal Mode:',
      line3: 'Login with last logged-in user by default',
      line4: 'Temporary user appears last in user list'
    },
    iotConfirm: 'Are you sure to disable IoT function?',
    setNewPassword: 'Please set new system password',
    repeatPassword: 'Please repeat system password',
    passwordMismatch: 'Passwords do not match',
    passwordResetSuccess: 'Password reset successfully',
    settingSuccess: 'Settings saved',
    iotEnableSuccess: 'IoT enabled successfully',
    iotDisabled: 'IoT disabled'
  },

  // Table settings page
  tableSettings: {
    hideUnusedScales: 'Hide Unused Scales',
    scaleName: 'Scale Name',
    isHidden: 'Hidden',
    sortOrder: 'Sort Order (Higher number comes first)',
    noMore: 'No more data'
  },

  // Pages
  pages: {
    // Home page
    home: {
      assessmentScale: 'Assessment Scale',
      cognitiveTraining: 'Cognitive Training',
      handEyeCoordination: 'Hand-Eye Coordination',
      groupFour: 'Thinking Training',
      loading: 'Loading',
      addSuccess: 'Added successfully'
    },
    // Bag page
    bag: {
      assessmentScale: 'Assessment Scale',
      cognitiveTraining: 'Cognitive Training',
      handEyeCoordination: 'Hand-Eye Coordination',
      groupFour: 'Thinking Training',
      loading: 'Loading',
      deleteSuccess: 'Deleted successfully',
      deleteFailed: 'Delete failed, please try again'
    }
  },

  // Login page
  login: {
    accountLogin: 'Account Login',
    accountRegister: 'Account Registration',
    login: 'Login',
    register: 'Register',
    emailOrPhone: 'Email/Phone',
    password: 'Password',
    enterPasswordPlaceholder: 'Enter 5-20 characters password',
    rememberPassword: 'Remember Password',
    forgotPassword: 'Forgot Password?',
    setSecurityQuestions: 'Set Security Questions',
    previousStep: 'Previous Step',
    cityQuestion: 'What city do you live in?',
    jobQuestion: 'What is your occupation?',
    answerPlaceholder: 'Please enter answer, case sensitive',
    confirmShutdown: 'Are you sure you want to shut down the computer?',
    confirm: 'Confirm',
    cancel: 'Cancel',
    // Validation messages
    enterEmailOrPhone: 'Please enter email or phone number',
    enterPasswordValidation: 'Please enter password',
    validEmailOrPhone: 'Please enter a valid email or phone number format',
    passwordLength: 'Password length must be 5-20 characters',
    enterCity: 'Please enter your city',
    enterJob: 'Please enter your occupation',
    cityMinLength: 'City name requires at least 2 characters',
    jobMinLength: 'Occupation name requires at least 2 characters',
    loginSuccess: 'Login successful',
    registerSuccess: 'Registration successful',
    // History records
    noHistory: 'No history records',
    clearAllHistory: 'Clear all records'
  },

  // Game page
  game: {
    firstItem: 'First Item',
    previousItem: 'Previous Item',
    nextItem: 'Next Item',
    lastItem: 'Last Item',
    questionList: 'Question List',
    optionalAnswers: 'Optional Answers',
    systemAutoJudge: '(System Auto Judge)',
    scoringCriteria: 'Scoring Criteria',
    scaleDescription: 'Scale Description',
    generateReport: 'Generate Report',
    exitAssessment: 'Exit Assessment',
    confirmExit: 'Are you sure you want to exit?',
    confirm: 'Confirm',
    cancel: 'Cancel',
    alreadyFirst: 'Already the first question',
    alreadyLast: 'Already the last item',
    questionNumber: 'Question {number}',
    // Canvas component
    canvas: {
      brush: 'Brush',
      eraser: 'Eraser',
      clear: 'Clear'
    },
    // Control panel
    controlPanel: {
      console: 'Console',
      recording: 'Recording',
      timer: 'Timer',
      alarm: 'Alarm',
      counter: 'Counter',
      playRecording: 'Play',
      startRecording: 'Start',
      cancelRecording: 'Cancel',
      finishRecording: 'Finish',
      reRecord: 'Re-record',
      reset: 'Reset',
      start: 'Start',
      pause: 'Pause',
      continue: 'Continue',
      closeAlarm: 'Close Alarm',
      correct: 'Correct',
      wrong: 'Wrong',
      missed: 'Missed',
      // Recording device error messages
      noRecordingDevice: 'No recording device detected. Please ensure the recording device is properly connected and turned on.',
      permissionDenied: 'Recording permission denied. Please allow recording permission in browser settings.',
      deviceOccupied: 'Recording device is occupied by another application. Please close other applications using the recording device and try again.',
      deviceNotSuitable: 'Recording device does not meet requirements. Please check recording device settings.',
      deviceConfigError: 'Recording device configuration error. Please check recording device settings.'
    },
    // Number pad
    numberPad: {
      answerCorrect: 'Answer Correct',
      answerWrong: 'Answer Wrong',
      confirm: 'Confirm',
      answered: 'Answered'
    },
    // Question table
    questionTable: {
      serialNumber: 'No.',
      assessmentContent: 'Assessment Content',
      score: 'Score',
      question: 'Question {number}'
    },
    // Config settings
    config: {
      configPage: 'Configuration Page',
      startTraining: 'Start Training',
      cancel: 'Cancel',
      minutes: 'minutes'
    }
  },

  // Error messages
  errors: {
    networkTimeout: 'Request timeout, please check network connection',
    networkError: 'Network error',
    serverError: 'Server error',
    unauthorized: 'Unauthorized access',
    forbidden: 'Access forbidden',
    notFound: 'Resource not found',
    internalError: 'Internal error',
    uploadFailed: 'Upload failed',
    downloadFailed: 'Download failed',
    deleteFailed: 'Delete failed',
    saveFailed: 'Save failed',
    loadFailed: 'Load failed'
  },

  // Messages
  messages: {
    confirmDelete: 'Are you sure to delete?',
    confirmExit: 'Are you sure to exit?',
    unsavedChanges: 'There are unsaved changes, are you sure to leave?',
    operationSuccess: 'Operation successful',
    operationFailed: 'Operation failed',
    pleaseSelect: 'Please select',
    pleaseInput: 'Please input',
    invalidInput: 'Invalid input',
    exceedsMaxLength: 'Exceeds maximum length limit',
    belowMinLength: 'Below minimum length requirement'
  },

  // Components translations
  components: {
    password: {
      defaultTitle: 'Please enter password',
      unlockSuccess: 'Unlock successful',
      passwordError: 'Password error',
      resetSuccess: 'Password reset successful',
      passwordMismatch: 'Passwords do not match'
    },
    changePassword: {
      title: 'Change Password',
      account: 'Account',
      accountPlaceholder: 'Please enter email/phone number',
      cityQuestion: 'What city do you live in?',
      jobQuestion: 'What is your profession?',
      answerPlaceholder: 'Please enter answer, case sensitive',
      newPassword: 'New Password',
      newPasswordPlaceholder: 'Please enter new password',
      confirmPassword: 'Confirm New Password',
      confirmPasswordPlaceholder: 'Please enter new password again',
      pleaseEnterAccount: 'Please enter account',
      invalidAccountFormat: 'Please enter correct email or phone format',
      pleaseEnterCity: 'Please enter your city',
      pleaseEnterJob: 'Please enter your profession',
      pleaseEnterNewPassword: 'Please enter new password',
      passwordTooShort: 'Password must be at least 6 characters',
      passwordMismatch: 'Passwords do not match',
      changeSuccess: 'Password changed successfully',
      changeFailed: 'Password change failed'
    },
    foot: {
      changePassword: 'Change Password',
      logout: 'Logout',
      confirmExit: 'Are you sure you want to exit the system?',
      noHistoryTasks: 'This patient has no historical tasks',
      noAssignedTasks: 'This patient has no assigned tasks',
      serviceError: 'Service error, please check authorization',
      lockedState: 'Currently locked, please unlock first',
      // Date time format
      dateFormat: {
        year: '',
        month: '/',
        day: ''
      },
              loading: 'Loading'
    },
    iotHis: {
      title: 'Historical Task List',
      title2: 'Historical Task List',
      taskNumber: 'Task Execution Number',
      scheme: 'Related Scheme',
      createTime: 'Task Creation Time',
      executionTime: 'Execution Time',
      includedProjects: 'Included Projects',
      completedProjects: 'Completed Projects',
      actions: 'Actions',
      startTask: 'Start Task',
      switchTask: 'Switch Task',
      goTask: 'Go On Task',

    },
    sound: {
      title: 'Volume Control'
    },
    configSetting: {
      title: 'Configuration Page',
      cardMemory: 'Card Memory',
      startTraining: 'Start Training'
    }
  },

  // Views translations
  views: {
    member: {
      searchPlaceholder: 'Enter username or user ID to search',
      defaultUsername: 'Username...',
      age: 'Age',
      report: 'Report',
      plan: 'Plan',
      selectUser: 'Select User',
      nameRequired: 'Name*',
      enterNamePlaceholder: 'Please enter name',
      gender: 'Gender',
      birthday: 'Birthday',
      selectBirthdayPlaceholder: 'Please select birthday',
      idNumber: 'ID Number',
      caseSensitivePlaceholder: 'Please note case sensitivity',
      remark: 'Remark',
      enterRemarkPlaceholder: 'Please enter remark',
      confirmSwitchUser: 'Switch user to <{username}>?',
      confirmDeleteUser: 'Delete user <{username}>?',
      noUsersFound: 'No related users found',
      pleaseEnterName: 'Please enter name',
      addSuccess: 'Added successfully',
      editSuccess: 'Edited successfully'
    },
    report: {
      editTip: 'Input content is not empty, whether to overwrite?',
      editTipSave: 'Input content is not empty, whether to discard?',
      assessmentReport: 'Assessment Report',
      trainingReport: 'Training Report',
      searchPlaceholder: 'Enter report time, category, or name to search',
      name: 'Name',
      reportTime: 'Report Time',
      reportCategory: 'Report Category',
      reportName: 'Report Name',
      noRecords: 'No records',
      assessmentScale: 'Assessment Scale',
      recommendTraining: 'RecommendTraining',
      details: 'Details',
      delete: 'Delete',
      confirmDelete: 'Confirm delete?',
      trainingDescription: 'Adjust training difficulty from easy to hard and duration from short to long based on patient\'s disability level. Combine with puzzle games to activate the brain and enhance patient motivation.',
      noRecommendedTraining: 'No recommended training available'
    }
  }
} 